import request from "@/utils/request";

/**
 * 列表公共业务
 */
export default {
  data() {
    return {
      // 遮罩层
      loading: true,
      // 选中数组
      ids: [],
      // 非单个禁用
      single: true,
      // 非多个禁用
      multiple: true,
      // 显示搜索条件
      showSearch: true,
      // 总条数
      total: 0,
      //  表格数据
      data: [],
      // 功能名称
      title:'',
    //   删除地址
      deletedUrl:""
    }
  },
  methods: {
    // 多选框选中数据
    handleSelectionChange(selection) {
      this.ids = selection.map(item => item.id)
      this.single = selection.length !== 1
      this.multiple = !selection.length
    },
    /** 新增按钮操作 */
    handleAdd() {
      this.$emit("add-handle", {
        open: true,
        title: "添加"+this.title,
        type:'ADD'
      })

    },
    /** 修改按钮操作 */
    handleUpdate(row) {
      const id = row.id || this.ids[0]
      this.$emit("update-handle", {
        id:id,
        open: true,
        title: "修改"+this.title,
        type:'UPDATE'
      })
    },
    /** 详情按钮操作 */
    handleDetail(row) {
      const id = row.id || this.ids[0]
      this.$emit("detail-handle", {
        id:id,
        open: true,
        title: this.title,
        type:'DETAIL'
      })
    },
    /** 搜索按钮操作 */
    handleQuery() {
      this.queryParams.pageNum = 1;
      this.getList();
    },
    /** 重置按钮操作 */
    resetQuery() {
      this.resetForm("queryForm");
      this.handleQuery();
    },
    /** 删除按钮操作 */
    handleDelete(row) {
      const ids = row.id || this.ids;
      this.$modal.confirm('是否确认删除编号为"' + ids + '"的数据项？').then(()=>{
        return request({
          url:this.deletedUrl + ids,
          method: 'delete'
        });
      }).then(() => {
        this.getList();
        this.$modal.msgSuccess("删除成功");
      }).catch(() => {});
    },

  }
}
